Spring Boot入门
最近Spring boot真是越来越火了,所以就想学习并写一个Spring boot的系列文章。以前大家一说spring的时候,都会想到Spring mvc框架,但是Spring mvc配置文件真是太多啦,而且每一个项目配置文件的内容都是差不多的,配置起来真是太费劲了。
还好现在Spring boot框架火了起来,原因就是约定大于配置,多数 Spring Boot 应用只需要很少的 Spring 配置,搭建一个spring boot项目真的是几秒就可以,大大简化了配置文件的编写。缺点就是封装太多,自动化太强,不如Spring mvc那样易懂,文档略少,版本迭代速度很快,也证明了该框架目前很火的趋势。
说了这么多,那么spring boot都有哪些优点呢?让这么多人都爱不释手
一、Spring boot优点
- 使用 Spring 项目引导页面可以在几秒构建一个项目
- 方便对外输出各种形式的服务,如 REST API、WebSocket、Web、Streaming、Tasks
- 非常简洁的安全策略集成
- 支持关系数据库和非关系数据库
- 支持运行期内嵌容器,如 Tomcat、Jetty
- 强大的开发包,支持热启动
- 自动管理依赖
- 自带应用监控
- 支持各种 IED,如 IntelliJ IDEA 、NetBeans
- 使测试变的简单,如JUnit、Spring Test & Spring Boot Test
- 强大的日志框架,如logback
有点说了这么多,还是得靠自己以后慢慢摸索,这里就当是先提个醒,接下来,我们来创建Spring boot项目
二、新建spring boot项目
1. 打开idea,选择新建项目,java要1.8版本以上
2. 配置项目名称,包名
3. 确定spring boot版本,选择依赖
4. 确定项目存放地址
5. 删除一些文件
6. 项目主目录
7. 设置application.properties
这个文件就是用来书写spring boot项目的配置信息的。
1 | spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver |
上述配置是配置了mysql相关的配置信息,说明:
- driver:使用高版本的
mysql-connector-java.jar
,之前的配置com.mysql.cj.jdbc.Driver
会被spring boot 2.1.0提示已被废弃,建议使用com.mysql.cj.jdbc.Driver
。像本项目,使用的mysql-connector-java.jar
版本就是8.0.13
。(注:可在pom.xml文件内右键点击Maven
的show Effective POM
中查看对应pom依赖的版本信息) - url:主要由主机+端口号+数据库拼凑而成,
allowMultiQueries=true
代表允许sql语句执行批量操作;serverTimezone=GMT%2B8
代表时区–东八区,在mysql驱动高版本中必须得设置时区。 - username:数据库账号
- password:数据库密码
至此,spring boot项目的基本框架就搭建成功了。项目启动成功,如图所示:
三、运行一个demo
新建helloDemo.java
文件:
1 | import org.springframework.web.bind.annotation.RequestMapping; |
@RestController
Spring4 之后新加的注解,原来返回json
需要@ResponseBody
配合@Controller
,现在一个顶俩
执行效果:
四、将application.properties替换为application.yml
1 | spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver |
替换为:
1 | spring: |
五、问题集锦
java.sql.SQLException: The server time zone value ‘Öйú±ê׼ʱ¼ä’ is unrecognized or represents more than one time zone.
报错截图:
问题分析:
这是由于mysql-connector-java.jar
高版本所导致,高版本要求jdbc连接的url后面必须要有时区的设置。
解决办法:
在jdbc的url后面加上serverTimezone=GMT%2B8
,即可解决问题。GMT%2B8
代表时区东八区。
例如:spring.datasource.url=jdbc:mysql://localhost:3306/study?allowMultiQueries=true&serverTimezone=GMT%2B8
点关注,不迷路
好了各位,以上就是这篇文章的全部内容了,能看到这里的人呀,都是人才。
白嫖不好,创作不易。各位的支持和认可,就是我创作的最大动力,我们下篇文章见!
如果本篇博客有任何错误,请批评指教,不胜感激 !
原文作者: create17
原文链接: https://841809077.github.io/2018/11/09/Spring boot/Spring boot入门.html
版权声明: 转载请注明出处(码字不易,请保留作者署名及链接,谢谢配合!)